草庐IT

Docker 持久化

全部标签

php - fast-cgi 连接php-fpm 和nginx 是否是持久(keep-alive)连接?

我正在尝试编写一个服务器演示来连接php-fpm,但我不知道php-fpm和nginx通过fast-cgi之间的连接是否是持久(keep-alive)连接?每次http请求到nginx时,nginx会再次通过tcp3-WayHandshake连接php-fpm吗?或者nginx和php-fpm之间的连接是一个保持连接并且nginx尝试重用它? 最佳答案 PHP-FPM是fastCGI协议(protocol)的实现,因此它遵守所有fastCGI规范要求。一个这样的要求是在section3.5ofthespecification,特别是

php - Docker 和 XDebug 不读取断点 VSCode

在过去的6个月里,我一直在MAC上使用XDebug和PHP版本7.0.*,对Docker容器进行远程调试。我运行的是旧版本的docker,它使用VirtualBoxtoVMfordocker,一切正常。我最近将docker更新到版本17.03.1,除了xDebug问题外什么都没有。我已经通过存储库中的问题联系了vscode-php-debug的创建者,然后他指示我通过xdebug和/或docker解决这个问题。我的问题如下:XDebug正在运行并在我的容器上工作,xdebug日志显示它连接到我的IDE,但当我在VSCode中设置断点时它只是关闭连接,就好像没有断点一样。我发在vscod

php - 在 (php-fpm) docker 容器中找不到 mysqli

我在跑php:7-fpm在我的nginxWeb服务器使用的docker容器中。除了我试图在我的PHP代码中实例化mysqli连接时,一切都运行良好。我收到以下错误:"NOTICE:PHPmessage:PHPFatalerror:UncaughtError:Class'Listener\mysqli'notfoundinindex.php:104这是我用于构建图像的Dockerfile,我在其中明确安装了mysqli扩展:FROMphp:7-fpmRUNdocker-php-ext-installmysqli根据下面的phpinfo()输出,它似乎已安装。我是否需要以某种方式配置或启用

php - (Docker) 收到错误 : docker-php-source: no such file or directory when building docker file

当我尝试构建docker文件时:https://github.com/docker-library/php/blob/3f43309a0d5a427f54dc885e0812068ee767c03e/7.1/Dockerfile命令:dockerbuild-tphp_image.我遇到了以下错误:Step14:COPYdocker-php-source/usr/local/bin/lstatdocker-php-source:nosuchfileordirectory谁能帮我找出问题所在?谢谢 最佳答案 您没有正确的dockerbu

php - memcached 在 docker-compose 中不工作

我在docker-compose中遇到memcached问题。这是docker-compose.yml:nginx:container_name:nginximage:nginx:latestports:-127.0.0.2:8000:80volumes:-./htdocs:/htdocs-./nginx.conf:/etc/nginx/conf.d/nginx.conflinks:-phpphp:container_name:phpbuild:./phpvolumes:-./htdocs:/htdocs-./php/php.ini:/usr/local/etc/php/php.ini

php - docker php7.2-fpm无法安装imap模块

我在尝试让imap与我的docker-compose一起工作时遇到问题。这是我的phpdockerfile的样子。FROMphp:7.2-fpmRUNapt-getupdate&&\apt-getinstall-y\curl\libmcrypt-dev\unzip\git#InstallComposerRUNcurl-sShttps://getcomposer.org/installer|php----install-dir=/usr/local/bin--filename=composerRUNcomposer--version#SettimezonetoUTCRUNrm/etc/l

php - 减小 docker 镜像的大小

我正在尝试将CraftCMS部署到zeit/now使用Docker。它在本地工作,但zeit的图像大小限制为100MB.我的容器当前是176MB.这是一个使用alpine的Docker镜像,nginx和phpCraft所需的模块,并使用多阶段构建来构建Composer组件,以减少构建工件的大小。这是Dockerfile:FROMzeit/wait-for:0.2aswait#BuilddependenciesFROMcomposer:latestasvendorCOPYcomposer.jsoncomposer.jsonCOPYcomposer.lockcomposer.lockRUN

docker各种报错解决

目录【问题1】Get“https://registry-1.docker.io/v2/“:contextdeadlineexceeded解决方法问题反思【问题2】Errorresponsefromdaemon:Get"https://index.docker.io/v1/search?q=mysql&n=25":dialtcp:lookupindex.docker.ioon192.168.1.2:53:readudp192.168.10.143:57022->192.168.1.2:53:i/otimeout解决方法【问题3】IPv4forwardingisdisabled.Networkin

php - Gitlab Ci 使用 docker 和 mysql 服务缓慢构建

我正在使用gitlab-ci-multirunner9.3.0和GitLabCommunityEdition9.3.5当我在我的本地虚拟盒子环境中运行我的php-unit测试时,总测试(30)只需要大约:Time:5minutes,Memory:96.00MB在我的gitlab主机上运行同样的测试,一共需要Time:41.68minutes,Memory:97.75MB测试需要mysql并在每个测试上创建数据库和加载夹具。我的DockerFile:FROMtetraweb/php:5.6#InstalladditionalpackagesRUNapt-getclean&&apt-get

php - 使用具有持久连接的先前 PDO 建立

我有一个带有登录表单的网站。当加载登录表单页面时,我创建一个新的PDO对象以查看连接是否正常工作。如果成功打开连接,查看者将看到一个登录表单。如果不成功,他们会收到一条消息,说明服务器已关闭。然后他们填写详细信息并单击登录。登录过程是通过AJAX进行的,因此页面不会重新加载,JavaScript会将其详细信息发送到服务器上的PHP文件。如何使用之前建立的连接?我正在考虑使用持久连接,但我并不真正理解它的作用,所以我知道它是否对我有帮助。我不想创建一个新连接并检查它是否像我们之前那样工作。那么持久连接会起作用吗?我用MySQL阅读了它的php.net文档,但我不理解它,也找不到任何关于它